if (this._windows.length == 0)
this.launch();
else {
+ /* Pick the first window and activate it, switching to its workspace
+ * if necessary. In the future, we want to have a menu dropdown here. */
let first = this._windows[0];
- first.activate(Clutter.get_current_event_time());
+ let firstWorkspace = first.get_workspace();
+ let currentWorkspaceIndex = Shell.Global.get().screen.get_active_workspace_index();
+ let currentWorkspace = Shell.Global.get().screen.get_workspace_by_index(currentWorkspaceIndex);
+ let ts = Clutter.get_current_event_time();
+ if (currentWorkspace != firstWorkspace)
+ firstWorkspace.activate_with_focus(first, ts);
+ else
+ first.activate(ts);
}
this.emit('activated');
},